package com.gzx.tjzy.feign.resp;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import vip.xiaonuo.common.handler.CommonSm1AesTypeHandler;

import java.io.Serial;
import java.io.Serializable;

/**
 * 恒天外呼话单对象 gzx_ht_call_record
 *
 * @author LionLi
 * @date 2024-10-11
 */
@Data
@TableName(value = "gzx_ht_call_record",autoResultMap = true)
public class GzxHtCallRecordDto implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    @TableId(value = "id")
    private Long id;

    private String business;

    /**
     * 0呼入1呼出3磋商4内呼
     */
    private Integer callType;

    /**
     * 呼叫序列号
     */
    private String callId;

    /**
     * 工号
     */
    private String agentNum;

    /**
     * 用户
     */
    private String userName;

    /**
     * 主叫
     */
    private String caller;

    /**
     * 被叫
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String callee;

    /**
     * 客户振铃时间
     */
    private String ringTime;

    /**
     * 振铃时长
     */
    private Integer ringDuration;

    /**
     * 客户接通时间
     */
    private String connectTime;

    /**
     * 通话开始时间
     */
    private String startTime;

    /**
     * 通话结束时间
     */
    private String endTime;

    /**
     * 通话时长
     */
    private Integer callDuration;

    /**
     * 录音URL
     */
    private String fileUrl;

    /**
     * 号码归属地
     */
    private String area;

    /**
     * 呼叫结果
     */
    private String result;

    /**
     * 1客户挂断2坐席挂断
     */
    @TableField("`signal`")
    private Integer signal;

    /**
     * 预测外呼任务ID
     */
    private String taskId;

    /**
     * 预测外呼追加名单时间
     */
    private String importTime;

    /**
     * 预测外呼排队时间
     */
    private String addTime;

    /**
     * 预测外呼转人工时间
     */
    private String acdEndTime;

    /**
     * 预测外呼排队时长
     */
    private Integer acdDuration;

    /**
     * 是否转满意度
     */
    private Boolean inviteComments;

    /**
     * 满意度评价
     */
    private String mydKey;

    /**
     * ASR识别编码
     */
    private Integer asrCode;

    /**
     * ASR识别状态
     */
    private String asrName;

    /**
     * 公司编码（英文）
     */
    private String companyName;

    /**
     * 创建时间
     */
    private String createdTime;

    /**
     * 案件ID
     */
    private Long caseId;
}
